package zwierzaki;

public class LiskovSubstitutionPrincipalViolated {

	public static void main(String[] args) {

		SuperKlasa superObjekt = new SuperKlasa();
		SubKlasa subObjekt = new SubKlasa();
		
		ogolnaMetoda(superObjekt);
		ogolnaMetoda(subObjekt);
	}

	private static void ogolnaMetoda(SuperKlasa obiekt) {

		if(obiekt.getClass() == zwierzaki.SuperKlasa.class){
			System.out.println();
			System.out.println(obiekt.getClass());
			System.out.println("To jest obiekt SuperKlasy");
			((SuperKlasa) obiekt).superMetoda();
		}
		else{
			System.out.println();
			System.out.println(obiekt.getClass());
			System.out.println("To jest obiekt SubKlasy");
			((SubKlasa) obiekt).subMetoda();
		}
	}

}
